package com.omuao.service.product.mapper.brand.front.category;

import com.omuao.common.utils.page.Page;
import com.omuao.core.lang.product.dto.brand.front.category.BrandFrontCategoryRelDto;
import com.omuao.core.lang.product.entity.brand.front.category.BrandFrontCategoryRel;

import java.util.List;

/**
 * 品牌前台分类联系Mapper
 *
 * @author yumi@omuao.com
 * @since 2019-10-15
 **/
public interface BrandFrontCategoryRelMapper {

    /**
     * 根据ID 删除 品牌前台分类联系
     *
     * @param id 主键
     * @return 成功条数
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 插入品牌前台分类联系记录
     *
     * @param record 记录
     * @return 成功条数
     */
    int insert(BrandFrontCategoryRel record);

    /**
     * 插入品牌前台分类联系记录
     *
     * @param record 记录
     * @return 成功条数
     */
    int insertSelective(BrandFrontCategoryRel record);

    /**
     * 根据ID查询品牌前台分类联系记录
     *
     * @param id 主键
     * @return 品牌前台分类联系记录
     */
    BrandFrontCategoryRel selectByPrimaryKey(Long id);

    /**
     * 更新品牌前台分类联系记录
     *
     * @param record 品牌前台分类联系记录
     * @return 成功条数
     */
    int updateByPrimaryKeySelective(BrandFrontCategoryRel record);

    /**
     * 更新品牌前台分类联系记录
     *
     * @param record 品牌前台分类联系记录
     * @return 成功条数
     */
    int updateByPrimaryKey(BrandFrontCategoryRel record);

    /**
     * 根据DTO条件查询品牌前台分类联系列表
     *
     * @param recordDto DTO条件
     * @param page      分页
     * @return 品牌前台分类联系列表
     */
    List<BrandFrontCategoryRel> selectListByDto(BrandFrontCategoryRelDto recordDto, Page page);

    /**
     * 根据唯一ID查询属性选项记录
     *
     * @param unionId 唯一ID
     * @return 属性选项记录
     */
    BrandFrontCategoryRel selectByUnionId(Long unionId);
}